Technical Field
This application relates to retrieving data from data storage systems.
Description of Related Art
Computer systems may include different resources used by one or more host processors. Resources and host processors in a computer system may be interconnected by one or more communication connections. These resources may include, for example, data storage devices such as those included in the data storage systems manufactured by EMC Corporation. These data storage systems may be coupled to one or more servers or host processors and provide storage services to each host processor. Multiple data storage systems from one or more different vendors may be connected and may provide common data storage for one or more host processors in a computer system.
A host processor may perform a variety of data processing tasks and operations using the data storage system. For example, a host processor may perform basic system I/O operations in connection with data requests, such as data read and write operations.
Host processor systems may store and retrieve data using a storage device containing a plurality of host interface units, disk drives, and disk interface units. The host systems access the storage device through a plurality of channels provided therewith. Host systems provide data and access control information through the channels to the storage device and the storage device provides data to the host systems also through the channels. The host systems do not address the disk drives of the storage device directly, but rather, access what appears to the host systems as a plurality of logical disk units. The logical disk units may or may not correspond to the actual disk drives. Allowing multiple host systems to access the single storage device unit allows the host systems to share data in the device. In order to facilitate sharing of the data on the device, additional software on the data storage systems may also be used.
Computers, computer networks, and other computer-based systems are becoming increasingly important as part of the infrastructure of everyday life. Networks are used for sharing peripherals and files. In such systems, complex components are the most common sources of failure or instability. The proliferation of multiple interacting components leads to problems that are difficult or impossible to predict or prevent. The problems are compounded by the use of networks, which introduce the added complexity of multiple machines interacting in obscure and unforeseen ways.
Additionally, the need for high performance, high capacity information technology systems is driven by several factors. In many industries, critical information technology applications require outstanding levels of service. At the same time, the world is experiencing an information explosion as more and more users demand timely access to a huge and steadily growing mass of data including high quality multimedia content. The users also demand that information technology solutions protect data and perform under harsh conditions with minimal data loss and minimum data unavailability. Computing systems of all types are not only accommodating more data but are also becoming more and more interconnected, raising the amounts of data exchanged at a geometric rate.
To address this demand, modern data storage systems (“storage systems”) are put to a variety of commercial uses. For example, they are coupled with host systems to store data for purposes of product development, and large storage systems are used by financial institutions to store critical data in large databases. For many uses to which such storage systems are put, it is highly important that they be highly reliable so that critical data is not lost or unavailable. Additionally, in case of a failure in such storage systems, it is critical that cause of the failure is investigated in a timely manner for preventing further failures in such storage systems.
Different tasks may be performed in connection with a data storage system. For example, software may be executed on the data storage system in connection with performing data storage administration tasks such as for data storage configuration, management, and/or monitoring. Monitoring of a data storage system includes analyzing health of the data storage system and investigating cause of a failure in the data storage system when the data storage system fails to function successfully. Monitoring of a data storage system is performed by services such as a data collection service, a configuration service and a performance analyzer service. The data collection service gathers logs of the storage system (“system logs”), snapshots of the data storage system's memory, configuration and status information of the data storage system. Information collected by the data collection service may be stored on a storage device connected to the data storage system and may be retrieved later. Information stored on the storage device is then analyzed by storage experts for investigating cause of a failure in the data storage system. Generally, a remote user interface such as a graphical user interface (GUI) and a command line interface (CLI) is used for retrieving information from the data storage system. However, it may be difficult or impossible to retrieve information from the data storage system when a connection between the remote user interface and the data storage system is broken or the data storage system stops responding to commands issued from the remote user interface.